using AiQiuQuan.Sport.Model.Enums;

namespace AiQiuQuan.Sport.WebApi.Entities
{
    /// <summary>
    /// 比赛队伍
    /// </summary>
    public class GameTeam : BaseEntity
    {
        /// <summary>
        /// 比赛ID
        /// </summary>
        public Guid GameId { get; set; }

        /// <summary>
        /// 业务ID
        /// </summary>
        public Guid BusinessId { get; set; }

        /// <summary>
        /// 对阵类型，1单打、2双打、3男单、4女单、5男双、6女双、7混双
        /// </summary>
        public GameVersusEnum VersusType { get; set; }

        /// <summary>
        /// 队伍名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 头像
        /// </summary>
        public string? HeadUrl { get; set; }

        /// <summary>
        /// 分组序号
        /// </summary>
        public int GroupNo { get; set; }

        /// <summary>
        /// 队伍编号
        /// </summary>
        public string TeamNo { get; set; }

        /// <summary>
        /// 用户1ID
        /// </summary>
        public Guid User1Id { get; set; }

        /// <summary>
        /// 用户2ID，单打时无效
        /// </summary>
        public Guid? User2Id { get; set; }

        /// <summary>
        /// 比赛订单ID
        /// </summary>
        public Guid GameOrderId { get; set; }

        /// <summary>
        /// 报名状态：1报名中、2已报名、5已拒绝、9已取消
        /// </summary>
        public GameJoinStateEnum JoinState { get; set; }

        /// <summary>
        /// 支付状态
        /// </summary>
        public PayOrderStateEnum PayState { get; set; }

        /// <summary>
        /// 报名人ID
        /// </summary>
        public Guid JoinUserId { get; set; }

        /// <summary>
        /// 得分
        /// </summary>
        public int Score { get; set; }

        /// <summary>
        /// 积分
        /// </summary>
        public int Point { get; set; }

        /// <summary>
        /// 双打是否一起报名
        /// </summary>
        public bool IsTogether { get; set; }
    }
}
